/**
 * @description 力扣134，
 * @param {number[]} gas 每个站需要加的油
 * @param {number[]} cost 每个站油的存量
 * @return {number} 起点站的索引
 */
var canCompleteCircuit = function (gas, cost) {
    let n = gas.length;
    // 从任何一个站点开始
    for (let i = 0; i < n; i++) {
        let flag = 0;
        let carail = 0;
        // 从起点i开始遍历站点
        for (let j = i; j < i + n; j++) {
            if (j < n)
                carail += gas[j] - cost[j];
            else
                carail += gas[j - n] - cost[j - cost.length];

            if (carail < 0)
                break;
            else
                flag++;
        }
        if (flag == n)
            return i;
        else
            // 这一步很关键，因为这一段已经可以正常供油就不用再测了
            i += flag;
    }
    return -1
};